package com.ruoyi.system.service;

import java.util.List;

import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.system.domain.TenantInfo;

/**
 * 租户管理Service接口
 * 
 * @author sux
 * @date 2021-06-27
 */
public interface ITenantInfoService 
{

    /**
     * 查询所有租户信息
     * @return
     */
    public List<TenantInfo> selectAllTenantInfo();
    /**
     * 查询租户管理
     * 
     * @param tenantId 租户管理ID
     * @return 租户管理
     */
    public TenantInfo selectTenantInfoById(String tenantId);

    /**
     * 查询租户管理列表
     * 
     * @param tenantInfo 租户管理
     * @return 租户管理集合
     */
    public List<TenantInfo> selectTenantInfoList(TenantInfo tenantInfo);

    /**
     * 查询租户管理列表
     *
     * @param tanantIds 租户id集合
     * @return 租户管理集合
     */
    public List<TenantInfo> selectTenantInfoListByIds(String[] tanantIds);

    /**
     * 新增租户管理
     * 
     * @param tenantInfo 租户管理
     * @return 结果
     */
    public int insertTenantInfo(TenantInfo tenantInfo);

    /**
     * 修改租户管理
     * 
     * @param tenantInfo 租户管理
     * @return 结果
     */
    public int updateTenantInfo(TenantInfo tenantInfo);

    /**
     * 批量删除租户管理
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteTenantInfoByIds(String ids);

    /**
     * 删除租户管理信息
     * 
     * @param tenantId 租户管理ID
     * @return 结果
     */
    public int deleteTenantInfoById(String tenantId);

    /**
     *校验Excel数据是否满足条件
     * @param lists
     * @return
     */
    public String validateDatas(List<TenantInfo> lists);

    /**
     * 导入租户管理关系
     * @param lists
     * @param updateSupport
     * @param sysUser
     * @return
     */
    public String importRelations(List<TenantInfo> lists, boolean updateSupport, SysUser sysUser);

    Double selectSumFloorArea(String floorName);


}
